package com.freda.oa.flow.utl;

import java.text.SimpleDateFormat;
import java.util.Date;

/**
 *
 * 创建时间 2013-2-10
 *
 * <li>Project: freda_OA
 * <li>Packgae:com.freda.oa.flow.utl
 * <li>File Name: TimeUtil.java
 * <li>Description:时间工具类
 * <li>Copyright: Copyright (c) 2009-2012 Seening Co. Ltd.
 * <li>Company: 河北芙睿达软件开发团队
 *
 * @author Rally
 * @version 1.0
 * $Id: TimeUtil.java,v 1.0 2013-2-10 下午11:27:06 ZhangYu Exp
 */

public class TimeUtil {
	/**
	 * <li>功能描述：获得当前时间。
	 * @return
	 * String 
	 * @author Rally
	 */
	public static String getNowTime(){
		SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
		return dateFormat.format(new Date());
	}
	/**
	 * 获得当前时间根据。。
	 * @param dateString
	 * @return
	 * @author Rally
	 */
	public static String getNowTime(String formatStr){
		SimpleDateFormat dateFormat = new SimpleDateFormat(formatStr);
		return dateFormat.format(new Date());
	}
	/**
	 * <li>功能描述：获得任务持续时间。
	 * @param startTime
	 * @param endTime
	 * @return
	 * String 
	 * @author Rally
	 */
	public static String getDuration(String startTime,String endTime){
		
		SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
		
		try {
			Date end = dateFormat.parse(endTime);
			Date start = dateFormat.parse(startTime);
			long l=end.getTime()-start.getTime();
			long day=l/(24*60*60*1000);
			long hour=(l/(60*60*1000)-day*24);
			long min=((l/(60*1000))-day*24*60-hour*60);
			long s=(l/1000-day*24*60*60-hour*60*60-min*60);

			return ""+day+"天"+hour+"小时"+min+"分"+s+"秒";
		} catch (Exception e) {
			e.printStackTrace();
			return "";
		}
		
		
	}
	/**
	 * <li>功能描述：获得任务持续时间。
	 * @param startTime
	 * @param endTime
	 * @param formatStr
	 * @return
	 * String 
	 * @author Rally
	 */
	public static String getDuration(String startTime,String endTime,String formatStr ){
		
		SimpleDateFormat dateFormat = new SimpleDateFormat(formatStr);
		
		try {
			Date end = dateFormat.parse(endTime);
			Date start = dateFormat.parse(startTime);
			long l=end.getTime()-start.getTime();
			long day=l/(24*60*60*1000);
			long hour=(l/(60*60*1000)-day*24);
			long min=((l/(60*1000))-day*24*60-hour*60);
			long s=(l/1000-day*24*60*60-hour*60*60-min*60);
			
			return ""+day+"天"+hour+"小时"+min+"分"+s+"秒";
		} catch (Exception e) {
			e.printStackTrace();
			return "";
		}
	}

}
